3 research outputs found

    Initial Semantics for higher-order typed syntax in Coq

    Full text link
    Initial Semantics aims at characterizing the syntax associated to a signature as the initial object of some category. We present an initial semantics result for typed higher-order syntax together with its formalization in the Coq proof assistant. The main theorem was first proved on paper in the second author's PhD thesis in 2010, and verified formally shortly afterwards. To a simply-typed binding signature S over a fixed set T of object types we associate a category called the category of representations of S. We show that this category has an initial object Sigma(S). From its construction it will be clear that the object Sigma(S) merits the name abstract syntax associated to S. Our theorem is implemented and proved correct in the proof assistant Coq through heavy use of dependent types. The approach through monads gives rise to an implementation of syntax where both terms and variables are intrinsically typed, i.e. where the object types are reflected in the meta-level types. This article is to be seen as a research article rather than about the formalization of a classical mathematical result. The nature of our theorem - involving lengthy, technical proofs and complicated algebraic structures - makes it particularly interesting for formal verification. Our goal is to promote the use of computer theorem provers as research tools, and, accordingly, a new way of publishing mathematical results: a parallel description of a theorem and its formalization should allow the verification of correct transcription of definitions and statements into the proof assistant, and straightforward but technical proofs should be well-hidden in a digital library. We argue that Coq's rich type theory, combined with its various features such as implicit arguments, allows a particularly readable formalization and is hence well-suited for communicating mathematics.Comment: Article as published in JFR (cf. Journal ref). Features some more example

    Syntaxe abstraite typée

    No full text
    In order to specify the behavior of programming languages, to investigate their properties and to allow certification of their implementations, one studies formal models of existing programming languages. This study splits into the study of syntax and semantics, where the latter is based on appropriate formal models for the syntax. This PhD thesis is located in the syntactic part and is mainly concerned with two approaches to abstract syntax with variable binding. Both make use of the language of category theory. The first one is in the spirit of the category theoretic approach to algebraic theories. The second one is based on the notion of monads and introduces modules on monads instead of working with functors and their algebras. Furthermore the latter approach is adapted to a larger class of typed syntax with types depending on terms.Afin de spécifier le comportement des langages de programmation, de préciser leurs propriétés et de certifier leurs implémentations, on étudie des modèles formels des langages de programmation. L'étude se divise en l'étude de la syntaxe et en celle de la sémantique. La deuxième est basée sur des modèles formels de la syntaxe. Cette thèse de doctorat se situe dans l'étude de la syntaxe et est consacrée principalement à deux approches à la syntaxe abstraite typée avec liaison de variables. Ces deux approches utilisent le langage de la théorie des catégories. La premièere approche est dans l'esprit de l'approche catégorique aux théories alébriques. La deuxième est basée sur la notion de monade et introduit la notion d'un module sur une monade qui remplacent les foncteurs et leurs algèbres. En outre la deuxième approche est adaptée pour une classe plus large de syntaxes typées où les types dépendent des termes

    Remediation with Math-Bridge

    Get PDF
    International audienceMath-Bridge is based on an ITS and is an e-learning tool for mathematics that can be used in various pedagogical scenarios: acquiring knew mathematical knowledge, revising known concepts, deepening knowledge or training competencies. We carried out an experiment testing Math-Bridge in a short revision session with 96 first-year students before their mathematics exam. In the experiment we proposed a limited content concerning binary operations and groups to work on autonomously as a revision session for the exam. Students filled out a questionnaire concerning usability and accessibility of Math-Bridge at the end of the session
    corecore